A graphical user interface (GUI) is a user interface that allows users to interact with a computing device by directly manipulating displayed GUI elements, such as graphical icons and visual indicators (e.g., buttons, tabs, etc.). One of the common GUI elements is a dropdown menu, or equivalently, a dropdown list or a dropdown. The content of a dropdown typically includes a list of values selectable by a user. In one scenario, a dropdown hides the display of its content until the dropdown is selected by a user. In some other scenarios, a dropdown displays a default values (which is one of the values in the list) before a user selects the dropdown, and displays the list of values when a user selects the dropdown. The use of dropdowns simplifies the task of data entry, because a user does not need to type the data but can select the data. This prevents potential user mistakes and data errors.
In some scenarios, the contents of one dropdown may be dependent on the selection of one or more other dropdowns. For example, a company may be spread over multiple geographical locations, and the divisions in one location may be different from the divisions in another location. The company's Web page may include a first dropdown that shows the different locations, and a second dropdown that shows the divisions. The content of the second dropdown is dependent on the selection of the first dropdown.
Currently, most applications build relationships among multiple dropdowns statically at design time. Generally, the relationship and the candidate values in the dropdowns are hard-coded. Adding new dropdowns, adding new linkages among dropdowns or altering relationships between linked dropdowns would necessitate extensive custom code and programming efforts.